package edu.gduf.dao;

import edu.gduf.domain.User;
import org.apache.ibatis.annotations.Param;
import org.springframework.stereotype.Repository;

import java.util.List;


/**
 * @author 谢佳豪
 * @data 2020/9/11 - 21:19
 * @target 数据库user表的访问接口
 */
@Repository
public interface UserDao {

    /**
     * 分页查询user表中
     * @param pageSize 页面显示数据条数
     * @param pageIndex 当前页面下标值
     * @return 当前页面显示的数据
     */
    List<User> pageQuery(@Param("pageSize") Integer pageSize, @Param("pageIndex") Integer pageIndex);

    /**
     * 查询用户总人数
     * @return 返回用户总数量
     */
    Integer totalNumber();

    /**
     * 根据用户名查询用户信息
     * @param username 用户名
     * @return 指定用户数据
     */
    User findUser(String username);

    /**
     * 添加用户信息
     * @param user 用户数据对象
     * @return 添加结果
     */
    Boolean addUser(User user);

    /**
     * 根据id删除用户
     * @param id 用户id
     * @return 删除结果
     */
    Boolean byIdDeleteUser(int id);

    /**
     * 根据id更新用户信息
     * @param user 用户数据对象
     * @return 更新结果
     */
    Boolean updateUser(User user);



}
